package com.fish.model.dto;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 用户导出DTO
 *
 * @author fish
 */
@Data
@ContentRowHeight(20)
@HeadRowHeight(25)
@ColumnWidth(20)
public class UserExportDTO {

    /**
     * 用户ID
     */
    @ExcelProperty(value = "用户ID", index = 0)
    @ColumnWidth(10)
    private Long id;

    /**
     * 用户名
     */
    @ExcelProperty(value = "用户名", index = 1)
    @ColumnWidth(15)
    private String username;

    /**
     * 昵称
     */
    @ExcelProperty(value = "昵称", index = 2)
    @ColumnWidth(15)
    private String nickname;

    /**
     * 邮箱
     */
    @ExcelProperty(value = "邮箱", index = 3)
    @ColumnWidth(25)
    private String email;

    /**
     * 手机号
     */
    @ExcelProperty(value = "手机号", index = 4)
    @ColumnWidth(15)
    private String phone;

    /**
     * 状态（0-禁用 1-正常）
     */
    @ExcelProperty(value = "状态", index = 5)
    @ColumnWidth(10)
    private String statusName;

    /**
     * 角色名称
     */
    @ExcelProperty(value = "角色", index = 6)
    @ColumnWidth(20)
    private String roleNames;

    /**
     * 创建时间
     */
    @ExcelProperty(value = "创建时间", index = 7)
    @ColumnWidth(20)
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    @ExcelProperty(value = "更新时间", index = 8)
    @ColumnWidth(20)
    private LocalDateTime updateTime;
}

